forked from robotframework/robotframework
-
Notifications
You must be signed in to change notification settings - Fork 1
[pull] master from robotframework:master #145
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
pull
wants to merge
1,715
commits into
testautomation:master
Choose a base branch
from
robotframework:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Manage this branch in SquashTest this branch here: https://master-n02a3.squash.io |
Earlier `TypeInfo.get_converter` (and `TypeInfo.convert` that uses it) raised a TypeError if there was no converter for the type itself, but didn't care about possible nested unknown converters. Now handling unknown types is configurable: - If `allow_unknown` is False (default), a TypeError is raised if the type itself or any of its nested types have no converter. This makes it easy to reject types like `list[Unknown]`, which is something we want to do in variable conversion (#3278). - If `allow_unknown` is True, a special `UnknownConverter` is returned and its `convert` returns the original value as-is. These changes required adapting the argument conversion logic to avoid changes affecting corner cases like `arg: Unknown = None`.
Also enhance related tests.
- Fix problem if variabe name contains characters also in the keyword name. This typically occurs only with embedded arguments. Fixes #5330. - Fix using embedded arguments that use custom patterns with variables using inline Python evaluation syntax. Fixes #5394. - Add tests for using embedded arguments with variables and other content. This unfortunately doesn't work if embedded arguments use custom patterns (#5396). Above problems were fixed by replacing variables with placeholders before matching keywords and then replacing placeholders with original variables afterwards. With custom patterns also automatically added pattern that matched variables (and failed to match the inline evaluation syntax) needed to be updated to match the placeholder instead.
…uages-in-help Feat: libdoc dynamic languages in help
Avoid conflict with Python's standard exception with the same name. Related to #5377.
This is related to #5393. Problems were discovered when unit tests didn't succeed on Python 3.8. Investigation reveladed this: 1. Python 3.8 doesn't have Annotated that was used in a test that validated the fix for #5393. 2. Annotated can be imported from typing_extensions in tests, but it turned out that Python 3.8 get_origin and get_args don't handle it properly so test continued to fail. 3. A fix for the above was trying to import also get_origin and get_args from typing_extensions on Python 3.8. That fixed the provious problem, but string representation was still off. 4. It turned out that our type_name and type_repr didn't handle Annotated and TypeRef properly. Most likely the same issue occurred also with other parameterized special forms.
Don't remove existing SUITE scope variables with same name. Fixes #5399.
`Process.run_process` signature will change as part of #5412. Better to use a custom library in Libdoc tests instead.
See issue #3278. User Guide documentation still missing and some cleanup to be done.
- Enhance error reporting with embedded args having invalid type. - Consistent test case naming style. - Some code cleanup. Part of #3278.
Consistently use `${tc[0, 1]}` style for accessing keywords, messages,
etc. Avoid `${tc.body[0]}` and `${tc.body[0][1]}`.
Most importantly, verify that `robot.run` can be executed multiple times with async keywords. See issue #5500.
Fixes #5093. --------- Co-authored-by: Pekka Klärck <[email protected]>
These keywords got the Secret support: - Create File - Append to File - Set Environment Variable - Append to Environment Variable Part of #5512.
Earlier both `str()` and `repr()` returned `Secret(value=<secret>)`, now that's only used by `repr()`. Also enhance tests to actually validate logged value. Little cleanup to tests as well. This is an enhancement to #4537.
Fixes subtle problems with using ListConverter for handling Sequence and DictionaryConverter for handling Mapping. Fixes #5531.
- Change ListConverter to extend SequenceConverter and DictionaryConverter to extend MappingConverter to remove uplication. - Utilize new `_string_convert` hook method in cases where the existing `_non_string_conver` was used to make the converted type more explicit. Related to changes done as part of #5531.
Also change Python 3.14 to release version.
Related to PR #5524.
Part of #5373. Also some other changes: - Documentation enhancement. Mostly removing information that's now got automatically based on type hints. - Don't support using an empty string for disabling timeouts. This wasn't documented anywhere and preserving the functionality would have required using `timedelta | Literal[""] | None` instead of `timedelta | None`. Documented ways to disable timeout continue to work. - Use NamedTemporaryFile, not TemporaryFile, with stdin content to get sane file name shown in configuration.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )